LZ bitmap locations (later build)

1. 38:C88B [0xc488b]
- english font, record text graphics, mini-pictures

2. 38:E0DF [0xc60df]
- map text graphics, numbers

3. 37:B5B8 [0xbb5b8]
- record japanese text (sprites)

4. 35:FE54 [0xafe54]
- 2-bpp control pad text

5. 38:D45B [0xc545b]
- pilot select text

6. 36:EBF8 [0xb6bf8]
- more pilot select graphics

7. 38:A82B [0xc282b]
- pause/sprite text

x. Other
- 39:871C (map ships)
- 38:EE4B (map planets)
- 38:A007 (hud text)
- 36:9D30 (starfields)

=========================================================
=========================================================

LZ bitmap locations (older build)

1. 39:927C [0xc927c]
- battle text

2. 39:A00C [0xca00c]
- pilot text

3. 39:C00C [0xcc00c]
- training:train font,text

4. 39:AE50 [0xcae50]
- training:type

5. 39:C7AC [0xcc7ac]
- mission

x. Other
- 36:8E30 [0xb0e30] (atmosphere)
- 35:96C8 [0xa96c8] (sprites)
- 35:B9EC [0xab9ec] (pilots)
- 35:8A04 [0xa8a04] (english font)
- 39:D0C0 [0xcd0c0] (2-bpp)

=========================================================
=========================================================

Script (later build)

* 2-byte pointer table at $80:AD24-AECB
  Text begins 2 bytes after indirect lookup


Reference:

; rom bank (r0 -> $00a6)

0b:83da a0 00    ibt r0,#$00        r00=$0000 r15=$83dd src: r00 dst: r00 20:D0A0
0b:83dc 3f       alt3               r15=$83de           src: r00 dst: r00 20:D0A0
0b:83dd df       romb               r15=$83df           src: r00 dst: r00 20:D0A0
0b:83de 3e       alt2               r15=$83e0           src: r00 dst: r00 20:D0A0
0b:83df f0 a6 00 sm ($00a6),r0      r15=$83e3           src: r00 dst: r00 20:D0A0

; start of text pointer table

0b:83e2 fe 24 ad iwt r14,#$ad24     r14=$ad24 r15=$83e6 src: r00 dst: r00 20:AD24

; index into table

0b:83e5 2e       with r14           r15=$83e7           src: r14 dst: r14 20:AD24
0b:83e6 51       add r1             r15=$83e8           src: r00 dst: r00 20:AD24
0b:83e7 ef       getb               r00=$0068 r15=$83e9 src: r00 dst: r00 20:AD24
0b:83e8 de       inc r14            r14=$ad25 r15=$83ea src: r00 dst: r00 20:AD25
0b:83e9 3d       alt1               r15=$83eb           src: r00 dst: r00 20:AD25
0b:83ea ef       getbh              r00=$9168 r15=$83ec src: r00 dst: r00 20:AD25

; document new location

0b:83eb d0       inc r0             r00=$9169 r15=$83ed src: r00 dst: r00 20:AD25
0b:83ec d0       inc r0             r00=$916a r15=$83ee src: r00 dst: r00 20:AD25
0b:83ed 52       add r2             r15=$83ef           src: r00 dst: r00 20:AD25
0b:83ee 3e       alt2               r15=$83f0           src: r00 dst: r00 20:AD25
0b:83ef f0 b8 00 sm ($00b8),r0      r15=$83f3           src: r00 dst: r00 20:AD25
0b:83f2 20       with r0            r15=$83f4           src: r00 dst: r00 20:AD25

; now load text

0b:83f3 1e       move r14,r0        r14=$916a r15=$83f5 src: r00 dst: r00 20:916A
0b:83f4 ef       getb               r00=$00c4 r15=$83f6 src: r00 dst: r00 20:916A

{...}

; Reload bank

01:eeb3 3d       alt1               r15=$eeb5           src: r00 dst: r00 2D:E37C
01:eeb4 a0 53    lms r0,($00a6)     r00=$0000 r15=$eeb7 src: r00 dst: r00 2D:E37C
01:eeb6 3f       alt3               r15=$eeb8           src: r00 dst: r00 2D:E37C
01:eeb7 df       romb               r15=$eeb9           src: r00 dst: r00 20:E37C

; Check next string byte

01:eeb8 2c       with r12           r15=$eeba           src: r12 dst: r12 20:E37C
01:eeb9 1e       move r14,r12       r14=$916a r15=$eebb src: r00 dst: r00 20:916A
01:eeba dc       inc r12            r12=$916b r15=$eebc src: r00 dst: r00 20:916A
01:eebb ef       getb               r00=$00c4 r15=$eebd src: r00 dst: r00 20:916A
01:eebc 25       with r5            r15=$eebe           src: r05 dst: r05 20:916A
01:eebd b0       moves r5,r0        r05=$00c4 r15=$eebf src: r00 dst: r00 20:916A

; Keep processing

01:eebe 08 0d    bne $eecd          r15=$eecd           src: r00 dst: r00 20:916A
01:eec0 01       nop                r15=$eece           src: r00 dst: r00 20:916A

; Terminate

01:eec1 ec       dec r12            r12=$918e r15=$eec3 src: r00 dst: r00 20:918E
01:eec2 2d       with r13           r15=$eec4           src: r13 dst: r13 20:918E
01:eec3 12       move r2,r13        r02=$0067 r15=$eec5 src: r00 dst: r00 20:918E
01:eec4 3d       alt1               r15=$eec6           src: r00 dst: r00 20:918E
01:eec5 ad 5c    lms r13,($00b8)    r13=$9181 r15=$eec8 src: r00 dst: r00 20:918E
01:eec7 bc       from r12           r15=$eec9           src: r12 dst: r00 20:918E
01:eec8 6d       sub r13            r00=$000d r15=$eeca src: r00 dst: r00 20:918E
01:eec9 2c       with r12           r15=$eecb           src: r12 dst: r12 20:918E
01:eeca 1e       move r14,r12       r15=$eecc           src: r00 dst: r00 20:918E
01:eecb 9b       jmp (r11)          r15=$f01c           src: r00 dst: r00 20:918E
01:eecc 01       nop                r15=$f01d           src: r00 dst: r00 20:918E
